import { fileURLToPath, URL } from 'node:url'

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import vueDevTools from 'vite-plugin-vue-devtools'
import { mars3dPlugin } from 'vite-plugin-mars3d'

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue(), vueDevTools(), mars3dPlugin()],
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url))
    }
  },
  // 跨域配置
  server: {
    host: '0.0.0.0',
    proxy: {
      '/api': {
        // 代理标识，一般是每个接口前的相同的部分
        target: 'http://localhost:3333', // 这里写的是访问接口的域名和端口号，此处配置之后就不需要再配置axios中的baseUrl属性了！！！切记！！！
        // 接口验证测试，在需要调用时再调，此处只是举例，如下：
        // axios.get("/api/banner/json").then(res => {
        //   console.log("banner====>",res);
        // });
        changeOrigin: true, // 允许跨域
        rewrite: (path) => path.replace(/^\/api/, '') // 重写路径，替换请求地址中的指定路径
      }
    }
  }
})
